"""
	This page set the Contextual help for all forms
"""


help_simulation = {}

help_simulation['rpms']		    = "List of rpms to simulate separated with ','. Example: 1000,2000"
help_simulation['ncycles']	    = "Number of cycles for each rpm"
help_simulation['nsave']	    = "Step of iterations for save Simulation State. 0=never"
help_simulation['dtheta_rpm']	= "Maximum allowable crank angle variation in each time step [deg]"
help_simulation['Courant']	    = "Courant number"
help_simulation['ga']		    = "Specific heat ratio"
help_simulation['viscous_flow']	    = "Switches on/off (1/0) the friction computation with the pipe wall"
help_simulation['heat_flow']	    = "Switches on/off (1/0) the heat transfer computation with the pipe wall"
help_simulation['R_gas']	    = "Gas constant"
help_simulation['nstroke']	    = "Number of strokes per cycle"
help_simulation['engine_type']	    = "Engine type: \n0 -> Reciprocating \n1 -> Opposed-piston"
help_simulation['ig_order']	    = "Ignition order of cylinders. Example: 0,1,3,2,6"
help_simulation['filesave_state']   = "File name to save the state in each time step"
help_simulation['filesave_spd']	    = "File name to save the chemical species concentration in each time step"
help_simulation['get_state']	    = "Select how you initialize the state: \nFrom Here-> You must indicates the State in each component \nFrom File-> You must indicates the file to load the state for all components. (Used when you need to continue a simulation) \nFrom Fortran-> ICESym-1D calculates the initial state numerically with a predictor."
help_simulation['filein_state']	    = "File to load the initial state"
help_simulation['calc_engine_data'] = "Calculate engine's data to post-process, such as Power, Torque etc"
help_simulation['nappend']	    = "Step of iterations for save the component data. In order to see correctly the results in the post-process you should decrease this value. For higher speed, you should increase this value. 0=never"
help_simulation['folder_name']	    = "Folder name to save the simulation. In the post-process you must search it. This name is an identifier for this simulation"

help_cylinder = {}
help_cylinder['nnod']              = "Number of nodes (zones) per cylinder"
help_cylinder['nvi']               = "Number of intake valves per cylinder"
help_cylinder['nve']               = "Number of exhaust valves per cylinder"
help_cylinder['ndof']              = "Number of degrees of freedom"
help_cylinder['Bore']              = "Cylinder bore [m]"
help_cylinder['crank_radius']      = "Crank radius [m]"
help_cylinder['Vol_clearance']     = "Minimum volume of the combustion chamber [m^3]"
help_cylinder['head_chamber_area'] = "Surface area of the wall combustion chamber [m^2]"
help_cylinder['piston_area']       = "Piston crown area [m^2]"
help_cylinder['delta_ca']          = "Lag angle between crank shafts (only applicable for opposed-piston engines) [deg]"
help_cylinder['type_ig']           = "Ignition type: \n0 -> Spark-ignition \n1 -> Compression ignition"
help_cylinder['twall']             = "Wall cylinder temperature [K]"
help_cylinder['model_ht']          = "Heat-transfer model: \n0 -> Annand model \n1, 2 -> Woschni model \n3 -> Taylor model"
help_cylinder['factor_ht']         = "Coefficient affecting the heat-transfer law"
help_cylinder['scavenge']          = "Switches on/off (1/0) the scavenge computation"
help_cylinder['scavenge_type']     = "Scavenge type: \n'uniflow' \n'scre' \n'yam1' \n'yam6' \n'cd' \n'qubcr'"
help_cylinder['SRv']               = "Scavenge ratio by volume"
help_cylinder['full_implicit']     = "Switches on/off (1/0) the implicit computation of the cylinder and valves updates"
help_cylinder['mass_C']            = "Mass of fuel, air and residual gases into the cylinder [kg]"
help_cylinder['data_crevice']      = "NOT AVAILABLE"
help_cylinder['U_crevice']         = "NOT AVAILABLE"
help_cylinder['rod_length']        = "Connecting rod length [m]"
help_cylinder['state_ini']         = "Initial State. You need to complete it only if 'Simulation->get_state' is set 'from Here'"
help_cylinder['ownState']          = ""
help_cylinder['extras']            = "Select it, if you want to calculate extra data during the simulation and view it in post-process"
help_cylinder['histo']             = "List of nodes for which the state is saved"
help_cylinder['label']             = "Choose a label for this object"
help_cylinder['species_model']     = "NOT AVAILABLE"
help_cylinder['type_temperature']  = "Select the type of temperature simulation"

help_fuel={}
help_fuel['Q_fuel']    = "Fuel lower heating value [J/kg]"
help_fuel['y']         = "H/C ratio of fuel"
help_fuel['hvap_fuel'] = "Fuel heat of vaporization [J/kg]"

help_injection={}
help_injection['pulse']                = "Shape of the injection pulse: \n1 -> Squared sine-wave \n2 -> Square wave \3 -> User-defined"
help_injection['m_inj']                = "Total injected mass per pulse [kg]"
help_injection['dtheta_inj']           = "Duration of the injection pulse in crank angle degrees"
help_injection['T_fuel']               = "Fuel injection temperature [K]"
help_injection['theta_inj_ini']        = "Injection starting angle"
help_injection['theta_id']             = "Ignition delay angle (only needed for ignition delay model 2) [deg]"
help_injection['ignition_delay_model'] = "Ignition delay model: \n0 ->  Livengood and Wu model \n1 -> Hardenber and Hase model \n2 -> Constant user-defined delay"
help_injection['mfdot_array']          = "Two-column array with the user-defined injection pulse (angle and injected mass rate)"

help_combustion={}
help_combustion['theta_ig_0']       = "Combustion starting angle"
help_combustion['dtheta_comb']      = "Duration of the combustion in crank angle degrees"
help_combustion['phi']              = "Fuel/air equivalence ratio"
help_combustion['a_wiebe']          = "Combustion efficiency parameter for the Wiebe function"
help_combustion['m_wiebe']          = "Shape parameter for the Wiebe function"
help_combustion['combustion_model'] = "Combustion model for compression-ignition engines: \n0 -> Mass fraction burned profile defined by the user \n1 -> Two Wiebe functions \n2 -> Three Wiebe functions \n3 -> Watson model"
help_combustion['xbdot_array']      = "Two-column array with the user-defined mass fraction burned"

help_junction={}
help_junction['ndof']        = "Number of degrees of freedom" 
help_junction['nnod']        = "Number of nodes"
help_junction['modelo_junc'] = "Junction model" 
help_junction['histo']       = "List of nodes for which the state is saved"
help_junction['extras']      = "Select it, if you want calculate extra data during the simulation and view it in post-process"
help_junction['label']       = "Choose a label for this object"

help_tank={}
help_tank['nnod']      = "Number of nodes"
help_tank['ndof']      = "Number of degrees of freedom" 
help_tank['Volume']    = "Volume of tank [m^3]" 
help_tank['mass']      = "Mass of gas contained into the tank [kg]"
help_tank['h_film']    = "Heat-transfer coefficient [W/m^2 K]"
help_tank['Area_wall'] = "Tank wall area [m^2]"
help_tank['T_wall']    = "Tank wall temperature [K]"
help_tank['Cd_ports']  = "Discharge coefficients of the ports"
help_tank['state_ini'] = ""
help_tank['histo']     = "List of nodes for which the state is saved"
help_tank['extras']    = "Select it, if you want calculate extra data during the simulation and view it in post-process"
help_tank['label']     = "Choose a label for this object"

help_tube={}
help_tube['nnod']      = "Number of nodes"
help_tube['ndof']      = "Number of degrees of freedom" 
help_tube['longitud']  = "Pipe length [m]" 
help_tube['xnod']      = "Coordinates in x for each node [m]"
help_tube['diameter']  = "Pipe diameter [m]"
help_tube['twall']     = "Wall pipe temperature [K]"
help_tube['curvature'] = "Curvature in each node along the pipe"
help_tube['state_ini'] = "Initial State. You need complete it only if 'Simulation->get_state' is set 'from Here'"
help_tube['typeSave']  = ""
help_tube['numNorm']   = ""
help_tube['posNorm']   = ""
help_tube['histo']     = "List of nodes for which the state is saved"
help_tube['label']     = "Choose a label for this object"

help_atmosphere={}
help_atmosphere['rho'] = "Density [kg/m^3]"
help_atmosphere['u']   = "Velocity [m/s]"
help_atmosphere['p']   = "Pressure [Pa]"

help_valve={}
help_valve['Nval']        = "Number of valves"
help_valve['type_dat']    = "Lift valve type: \n0 -> Squared sine-wave \1 -> User-defined"
help_valve['angle_V0']    = "Valve opening angle"
help_valve['angle_VC']    = "Valve closing angle"
help_valve['Dv']          = "Head valve diameter [m]"
help_valve['valve_model'] = "Valve model"
help_valve['type']        = "Type of valve: intake or exhaust"
help_valve['Lvmax']       = "Maximum valve lift [m]"
help_valve['Lv']          = "Two-column array with the valve lift data"
help_valve['Cd']          = "Discharge coefficient data"
help_valve['histo']        = ""
help_valve['label']       = "Choose a label for this object"

ordered_pages_pre = ["Fast Start","Add, Edit, Delete Objects", "Connections between Objects", "Simulation Configuration","Object Cylinder",
"Object Tube","Object Junction","Object Valve","Object Atmosphere","Object Tank", "Import Data", "Plot Laws in Pre-Process"]

ordered_pages_post = []

html_pages = dict()
html_pages["Fast Start"] = "html/fast_start.html"
html_pages["Simulation Configuration"] = "html/simulation_configuration.html"
html_pages["Add, Edit, Delete Objects"] = "html/aed_objects.html"
html_pages["Connections between Objects"] = "html/connections.html"
html_pages["Import Data"] = "html/import_values.html"
html_pages["Plot Laws in Pre-Process"] = "html/plot_pre.html"
html_pages["Object Cylinder"] = "html/cylinder.html"
html_pages["Object Tube"] = "html/tube.html"
html_pages["Object Junction"] = "html/junction.html"
html_pages["Object Valve"] = "html/valve.html"
html_pages["Object Atmosphere"] = "html/atmosphere.html"
html_pages["Object Tank"] = "html/tank.html"
